var _ = require("lodash");
// _.zipObject([props=[]], [values=[]])
// 这个方法类似_.fromPairs，除了它接受2个数组，第一个数组中的值作为属性标识符（属性名），
// 第二个数组中的值作为相应的属性值
// 他也是把分开的数组，组合成对象，但是他只接受两个数组
let a = _.zipObject(["a", "b"], [1, 2]);
// console.log(a);

// _.zipObjectDeep([props=[]], [values=[]])
// 比上一个方法高级，可以接受路径属性
let b = _.zipObjectDeep(["a.b[0].c", "a.b[1].d"], [1, 2]);
// console.log(b);

// _.zipWith([arrays], [iteratee=_.identity])
// 和zip方法的效果基本一致，但是他可以指定需要组合的元素以何种方式组合
let arr1 = [1, 2];
let arr2 = [10, 20];
let arr3 = [100, 200];

function test(...arg) {
  let list = [...arg];
  // sum接受的是一个数组
  return _.sum(list);
}

let c = _.zipWith(arr1, arr2, test);
console.log(c);

let d = _.zipWith(arr1, arr2, arr3, test);
console.log(d);
